package com.mzj.saas.mservice.bill.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/*
 *编辑账单请求帮助类
 */
@ApiModel("编辑账单请求帮助类")
public class EditBillRequestVO {
    //账单id
    private Long id;
    //公租房签约其它费用待缴费明细Id
    private Long waitPaymentDetailId;

    //物业房产-签约其它费用待缴费明细Id
    private Long estateExpenseBillDetailId;

    //收费项目(1水费 2电费 3物业费 4宽带费 5电视费 6煤气费 7暖气费)
    private Integer chargeType;
    //起止数
    private Integer beginNum;
    //终止数
    private Integer endNum;
    //用量
    private Integer useNum;

    //单价
    private BigDecimal price;
    //账单周期开始时间
    private Date beginTime;
    //账单周期结束时间
    private Date endTime;
    //缴费状态(0未缴费 1已缴费)
    private Integer paymentStatus;
    //缴费渠道(1线上、2线下微信 3线下支付宝 4现金)
    private Integer paymentChannel;

    //费用金额
    private BigDecimal cost;
    //租金/押金账单ids
    private List<Long> rentIds;
    //其他费用账单ids
    private List<Long> expenseIds;
    //房产租金/押金账单ids
    private List<Long> estateRentIds;
    //房产其他费用账单ids
    private List<Long> estateExpenseIds;

    //房屋类型 1公租房 2房产
    private Integer houseType;

    /*
    审核状态 1通过 2不通过
     */
    @ApiModelProperty("审核状态 1通过 2不通过")
    private Integer auditStatus;

    public Integer getAuditStatus() {
        return auditStatus;
    }

    public void setAuditStatus(Integer auditStatus) {
        this.auditStatus = auditStatus;
    }

    public Long getEstateExpenseBillDetailId() {
        return estateExpenseBillDetailId;
    }

    public void setEstateExpenseBillDetailId(Long estateExpenseBillDetailId) {
        this.estateExpenseBillDetailId = estateExpenseBillDetailId;
    }

    public Integer getUseNum() {
        return useNum;
    }

    public void setUseNum(Integer useNum) {
        this.useNum = useNum;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getWaitPaymentDetailId() {
        return waitPaymentDetailId;
    }

    public void setWaitPaymentDetailId(Long waitPaymentDetailId) {
        this.waitPaymentDetailId = waitPaymentDetailId;
    }

    public Integer getChargeType() {
        return chargeType;
    }

    public void setChargeType(Integer chargeType) {
        this.chargeType = chargeType;
    }

    public Integer getBeginNum() {
        return beginNum;
    }

    public void setBeginNum(Integer beginNum) {
        this.beginNum = beginNum;
    }

    public Integer getEndNum() {
        return endNum;
    }

    public void setEndNum(Integer endNum) {
        this.endNum = endNum;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Date getBeginTime() {
        return beginTime;
    }

    public void setBeginTime(Date beginTime) {
        this.beginTime = beginTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getPaymentStatus() {
        return paymentStatus;
    }

    public void setPaymentStatus(Integer paymentStatus) {
        this.paymentStatus = paymentStatus;
    }

    public Integer getPaymentChannel() {
        return paymentChannel;
    }

    public void setPaymentChannel(Integer paymentChannel) {
        this.paymentChannel = paymentChannel;
    }

    public BigDecimal getCost() {
        return cost;
    }

    public void setCost(BigDecimal cost) {
        this.cost = cost;
    }

    public List<Long> getRentIds() {
        return rentIds;
    }

    public void setRentIds(List<Long> rentIds) {
        this.rentIds = rentIds;
    }

    public List<Long> getExpenseIds() {
        return expenseIds;
    }

    public void setExpenseIds(List<Long> expenseIds) {
        this.expenseIds = expenseIds;
    }

    public List<Long> getEstateRentIds() {
        return estateRentIds;
    }

    public void setEstateRentIds(List<Long> estateRentIds) {
        this.estateRentIds = estateRentIds;
    }

    public List<Long> getEstateExpenseIds() {
        return estateExpenseIds;
    }

    public void setEstateExpenseIds(List<Long> estateExpenseIds) {
        this.estateExpenseIds = estateExpenseIds;
    }

    public Integer getHouseType() {
        return houseType;
    }

    public void setHouseType(Integer houseType) {
        this.houseType = houseType;
    }
}
